﻿using System;

namespace Communication.Message.Buffer
{
	// Token: 0x02000022 RID: 34
	internal abstract class AbstractMessageBufferFactory : MessageBufferFactory
	{
		// Token: 0x06000139 RID: 313 RVA: 0x000037E6 File Offset: 0x000019E6
		protected AbstractMessageBufferFactory() : this(ByteOrder.BIG_ENDIAN)
		{
		}

		// Token: 0x0600013A RID: 314 RVA: 0x000037EF File Offset: 0x000019EF
		protected AbstractMessageBufferFactory(ByteOrder defaultOrder)
		{
			this.defaultOrder = defaultOrder;
		}

		// Token: 0x0600013B RID: 315 RVA: 0x000037FE File Offset: 0x000019FE
		public MessageBuffer GetBuffer(int capacity)
		{
			return this.GetBuffer(this.GetDefaultOrder(), capacity);
		}

		// Token: 0x0600013C RID: 316 RVA: 0x0000380D File Offset: 0x00001A0D
		public ByteOrder GetDefaultOrder()
		{
			return this.defaultOrder;
		}

		// Token: 0x0600013D RID: 317
		public abstract MessageBuffer GetBuffer(ByteOrder endianness, int capacity);

		// Token: 0x04000047 RID: 71
		private readonly ByteOrder defaultOrder;
	}
}
